When working on software maintenance activities for an application, a user may identify parts of the application source code and explore the source code, for example, to modify the source code to add new features, or to identify the cause of a software defect. For example, the user may attempt to comprehend an application by understanding the structure of the application in terms of classes in the application. The classes may represent data types that include a group of objects with the same properties and behaviors, and that are arranged in a hierarchy with other such data types. However, depending on the expertise of the user, comprehension of an application can be challenging based on an analysis that is limited to the application classes.